package com.ruoyi.system.domain;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 角色人才库字段权限表 sys_role_talent_permission
 * 
 * @author ruoyi
 */
public class RoleTalentPermission extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private Long id;

    /** 角色ID */
    @Excel(name = "角色ID")
    private Long roleId;

    /** 角色名称 */
    @Excel(name = "角色名称")
    private String roleName;

    /** 人才库模板表名 */
    @Excel(name = "模板表名")
    private String templateTable;

    /** 模板表字段名 */
    @Excel(name = "字段名")
    private String fieldName;

    /** 字段显示名称 */
    @Excel(name = "字段显示名称")
    private String fieldLabel;

    /** 权限类型（1=有权限，可读写；空=无权限，不可见） */
    @Excel(name = "权限类型", readConverterExp = "1=有权限")
    private String permissionType;

    public Long getId()
    {
        return id;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    @NotNull(message = "角色ID不能为空")
    public Long getRoleId()
    {
        return roleId;
    }

    public void setRoleId(Long roleId)
    {
        this.roleId = roleId;
    }

    @NotBlank(message = "角色名称不能为空")
    public String getRoleName()
    {
        return roleName;
    }

    public void setRoleName(String roleName)
    {
        this.roleName = roleName;
    }

    @NotBlank(message = "模板表名不能为空")
    public String getTemplateTable()
    {
        return templateTable;
    }

    public void setTemplateTable(String templateTable)
    {
        this.templateTable = templateTable;
    }

    @NotBlank(message = "字段名不能为空")
    public String getFieldName()
    {
        return fieldName;
    }

    public void setFieldName(String fieldName)
    {
        this.fieldName = fieldName;
    }

    @NotBlank(message = "字段显示名称不能为空")
    public String getFieldLabel()
    {
        return fieldLabel;
    }

    public void setFieldLabel(String fieldLabel)
    {
        this.fieldLabel = fieldLabel;
    }

    public String getPermissionType()
    {
        return permissionType;
    }

    public void setPermissionType(String permissionType)
    {
        this.permissionType = permissionType;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("roleId", getRoleId())
            .append("roleName", getRoleName())
            .append("templateTable", getTemplateTable())
            .append("fieldName", getFieldName())
            .append("fieldLabel", getFieldLabel())
            .append("permissionType", getPermissionType())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}

